package com.tiger.project.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.tiger.common.annotation.Excel;
import com.tiger.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;


/**
 * 【请填写功能名称】对象 book_value
 *
 * @author standard
 * @date 2022-09-15
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "book_value对象", description = "【请填写功能名称】内容")
public class BookValue extends BaseEntity {
private static final long serialVersionUID = 1L;

        /** ID */
        private Long id;

        /** 账面价值编号 */
        @Excel(name = "账面价值编号")
        @ApiModelProperty(value = "账面价值编号")
        private String bookValueNo;

        /** 账面价值类别 1-房产，2-地产  */
        @Excel(name = "账面价值类别 1-房产，2-地产 ")
        @ApiModelProperty(value = "账面价值类别 1-房产，2-地产 ")
        private Long assetCategory;

        /** 账面价值名称 */
        @Excel(name = "账面价值名称")
        @ApiModelProperty(value = "账面价值名称")
        private String name;

        /** 资产图片地址 */
        @Excel(name = "资产图片地址(,号拼接)")
        @ApiModelProperty(value = "资产图片地址(,号拼接)")
        private String assetPictures;

        @ApiModelProperty(value = "资产图片地址(,号拼接)")
        private List<String> assetPicturesList;

        /** 为所有资产产权面积之和(编辑关联资产的时候注意更新) */
        @Excel(name = "为所有资产产权面积之和(编辑关联资产的时候注意更新)")
        @ApiModelProperty(value = "为所有资产产权面积之和(编辑关联资产的时候注意更新)")
        private BigDecimal totalPropertyArea;

        /** 1-是，0-否 */
        @Excel(name = "1-是，0-否")
        @ApiModelProperty(value = "删除标志 1-是，0-否")
        private Long isDeleted;


        @JsonFormat(pattern = "yyyy-MM-dd")
        @Excel(name = "1-是，0-否", width = 30, dateFormat = "yyyy-MM-dd")
        @ApiModelProperty(value = "创建时间")
        private Date createdAt;


        @JsonFormat(pattern = "yyyy-MM-dd")
        @Excel(name = "1-是，0-否", width = 30, dateFormat = "yyyy-MM-dd")
        @ApiModelProperty(value = "更新时间")
        private Date updatedAt;


        /** 账面价值金额 */
        @Excel(name = "账面价值金额")
        @ApiModelProperty(value = "账面价值金额")
        private BigDecimal bookValue;

        /** 创建人 */
        @Excel(name = "创建人")
        @ApiModelProperty(value = "创建人")
        private Long createById;

        /** 创建人名称 */
        @Excel(name = "创建人名称")
        @ApiModelProperty(value = "创建人名称")
        private String createByName;

        /** 更新人 */
        @Excel(name = "更新人")
        @ApiModelProperty(value = "更新人")
        private Long updateById;

        /** 更新人名称 */
        @Excel(name = "更新人名称")
        @ApiModelProperty(value = "更新人名称")
        private String updateByName;

        /** 租户id(0--平台用户 非0--正常租户) */
        @Excel(name = "租户id(0--平台用户 非0--正常租户)")
        @ApiModelProperty(value = "租户id(0--平台用户 非0--正常租户)")
        private Long tenantId;

        @ApiModelProperty(value = "公司id")
        private Long companyId;

        @ApiModelProperty(value = "资产集合")
        private List<Asset> assetList = new ArrayList<>();

        @ApiModelProperty(value = "估价集合")
        private List<BookValueEvaluate> evaluateList = new ArrayList<>();

        /**
         * 估价
         */
        @ApiModelProperty(value = "估价")
        private BigDecimal evaluateMoney;

        @ApiModelProperty(value = "资产id  逗号拼接")
        private String assetId;

        @ApiModelProperty(value = "1-升序 2-降序")
        private Long rank;



}
